1. Field of the Invention
The present invention relates to telecommunications transmission systems and more particularly to a method and apparatus for facilitating increased call capacity in a transmission system when faced with a state of emergency.
The invention is particularly useful in the context of packet switched networks such as the Internet, and especially in the context of internet telephony (also known as voice-over-IP (VoIP) or IP telephony). For purposes of illustration, the invention will be described in the context of internet telephony, where xe2x80x9cinternet telephonyxe2x80x9d refers generally to the transmission of real-time media signals and/or data signals via a packet switched network (such as the Internet, for example). More generally, however, the invention can extend to use in connection with communication of any real-time media and/or data signals over any packet switched communications link, including, for instance, IP, ATM, frame relay, X.25 and SNA networks, whether local area, metropolitan area or wide area, and point-to-point or direct end-to-end connections. In addition, the invention can extend to use in connection with communications between a pair of terminals (e.g., users) or among multiple terminals (e.g., in a multicast environment).
2. Description of the Related Art
Those skilled in the art are familiar with the basic configuration of an internet telephony system. Architectural elements and functions suitable for use in one such system are described, for instance, by the H.323 standard for multimedia transmissions, as published by the International Telecommunications Union (ITU). The entirety of the H.323 standard is hereby incorporated herein by reference. The present invention, however, is not necessarily limited to use in the H.323 configuration but may extend to other configurations or other transmission protocols. For example, another protocol that can support internet telephony is Session Initiation Protocol, or SIP.
In general, an internet telephony system facilitates telephone communication between two or more users over a packet switched, such as an IP network for example. Each user may be positioned at a telephone device (hereafter xe2x80x9ctelephonexe2x80x9d), which may be a personal computer, a digital telephone, an analog telephone (e.g., a xe2x80x9cblack box telephonexe2x80x9d) or other suitable communications equipment. The telephone device may be any real-time media communication device, such as, for example, an audio telephone, a videophone, or a combination or subset of such devices and/or other devices. Each telephone device (and/or telephone number) is then typically served by a network access server, which provides connectivity to the packet switched network. In the context of internet telephony, the network access server may be referred to as an internet telephony gateway (xe2x80x9cITGxe2x80x9d or xe2x80x9cgatewayxe2x80x9d) and is typically owned and operated by an internet telephony service provider (ITSP).
The gateway serves as an interface between the packet switched network and the communications link, and in turn the telephone device. In this regard, for instance, the gateway typically performs translation between protocols, data formats and media types, to facilitate communication of information between two possibly different types of networks or links. For example, a gateway may be configured to receive a real-time media stream from the communications link and to encode (e.g., compress and packetize) the stream into a sequence of packets for transmission over the packet switched network to a remote destination. Similarly, a gateway may be configured to decode (e.g., de-packetize and decompress) data arriving from the packet switched network and to forward the resulting media stream via a communications link to a specified telephone device.
To place a two-party call to over a packet switched network, a user at an initiating telephone device establishes a connection with an initiating gateway via a suitable communications link such as the public switched telephone network (PSTN) and/or other circuit switched or packet switched network or direct link. Alternatively, the telephone device itself may be directly connected to the IP network. The communications link may be a permanent or semi-permanent connection (as in the case of a LAN connection between the telephone device and the gateway), which may facilitate direct dialing. Alternatively, to connect with the gateway, the user may need to place a call over the public switched telephone network call to the gateway, such as by dialing a telephone number designated by the user""s ITSP. In any event, the user may specify the telephone number of the called party.
In a packet switched network, the location of each gateway and other element is identified by a network address. Therefore, given the telephone number of a called party, the initiating gateway must identify the network address of a terminating gateway that can serve the called number. To identify the network address, the gateway may query an address mapping database or may send a signaling message to another device or process that can provide the necessary address based on the dialed number. In some systems, this address translation is facilitated by a signaling server such as a gatekeeper or proxy.
Provided with the network address of the terminating gateway, the initiating gateway may then contact the terminating gateway via the packet switched network and notify the terminating gateway of the desire to establish a connection with the called party. The terminating gateway may then establish an appropriate connection (e.g., over a communications link such as the PSTN) with a telephone device at the called number and notify the initiating gateway that the call can proceed. With the end-to-end connection thus established between the calling and called parties, the parties may then communicate with each other over the packet switched network, sending and receiving various communications signals, such as voice, video, audio and/or data.
The present invention relates to the capacity of telephony systems to receive and handle call traffic and specifically to the number of calls that the system can handle at any given time. One of the factors that is known to affect call capacity in a telephony network is the statistical analysis and engineering design that is involved in aggregating traffic in the network. In general, this analysis focuses on so-called xe2x80x9caggregation points,xe2x80x9d where traffic from a number of locations arrives to be processed and/or funneled through to a next point in the network.
An aggregation point typically has an input capacity (e.g., physical input ports, time slots, or channels), which may define a maximum amount of data that the aggregation point can receive and/or process at once (e.g., multiplexed, in parallel, etc.). In turn, the aggregation point typically has a processing capacity and/or output capacity, which defines a maximum amount of data that the aggregation point can process and/or output at once for transmission to the next (downstream) element in the network.
In many cases, it would be too expensive to build an aggregation point to be able to process and output all of its potential input in real time. Therefore, aggregation points are instead usually designed to have higher input capacity than processing capacity and/or output capacity. This design is based on statistical modeling and desired probabilities of call blocking. The statistical modeling assumes that, at any given time, something less than all of the input capacity will be filled, and that the input at any given time can therefore be statistically multiplexed among the available processing capacity and output capacity. If more than the statistically assumed input capacity arrives at once, some of the input may be blocked.
As an example of an aggregation point, consider the central office (CO) switch in the PSTN. A CO switch has a potential input capacity defined by a set number of input ports, each of which is permanently hard-wired to a telephone subscriber. The CO switch receives a number of incoming media streams (e.g., voice) from theses input ports and usually employs channels or time-slots to funnel multiple incoming streams into outgoing data. The output may thus take the form of a TDM (time division multiplexed) stream, for instance, where input media streams are time slotted together into a single output stream. Consequently, the CO switch has an output capacity, defined by the number of channels available in its output stream.
A CO switch is never designed to be able to handle calls from all of its subscribers at once. To be able to handle all such calls at once, the CO switch would require a statistically excessive number of time slots in its output or would require a statistically excessive number of output lines, either of which could be too expensive in practice. Instead, a CO switch is designed to be able to handle some statistically assumed maximum number of possible calls at once, with an accepted resulting probability any more calls than expected will be blocked.
For instance, although a CO switch may be hardwired to 10,000 subscribers, the assumption may be that only 10% of those subscribers, or 1,000 subscribers, will use their telephones at any one time. Therefore, the CO switch may be designed with output capacity for, say, 1,500 subscribers (thus providing a statistical 5% safety net). In the event that more than 1,500 of the subscribers attempt to use their telephones at once, some of the calls will be blocked.
As another example of an aggregation point, consider the tandem office (TO) switch in the PSTN. In most geographic regions, the output from a group of CO switches feeds into a TO switch, one of whose jobs it is to aggregate traffic from the CO switches, for transmission to a next downstream element in the network. Like the CO switch, the TO switch is usually designed with an input capacity sufficient to handle some statistically expected number of media streams arriving from the CO switches and with an output capacity sufficient to handle some statistically acceptable subset of that potential input capacity.
For instance, if the TO switch serves (is down stream from) four CO switches that each have a maximum output capacity of 1,500 media streams, the TO switch may be designed with a 6,000 port input capacity. However, if it is statistically assumed that no more than 3,000 media streams will arrive at the TO switch at any one time, then the TO switch may be designed with output capacity for, say 3,500 media streams (again providing a safety net). In the event that more than a total of 3,500 subscribers to the four CO switches attempt to use their telephones at once, some of the calls will be blocked due to a TO switch overload, even if none of the CO switches were at their full output capacity.
Aggregation points also exist in packet switched telephony. For instance, in most internet telephony systems, there will be a number of gateways in each geographic region. The gateways may be positioned in local telephone company central offices, in dedicated internet telephony offices, in the tandem switch office or in any other suitable location, operating in parallel with or instead of CO switches and/or TO switches. These gateways may be owned and operated by different ITSPs and/or may serve different groups of subscribers.
Each gateway in a region may receive a number of media streams concurrently from a number of subscribers, encode each media stream to produce a corresponding output packet sequence, and transmit the packets into the network. In the typical configuration, a packet router or other device such as a Layer 3 switch or an ATM switch (for example) will be provided downstream from these gateways in the packet switched network and will therefore receive most or all of the packets transmitted by all of the regional gateways.
This router or other downstream device serves as an aggregation point, typically designed with a particular input capacity and some limited capacity to process and output what it receives as input. In particular, a router, for instance, serves to route each packet independently into the network based on information contained in the packet header. Therefore, the amount of work performed by a packet router generally relates directly to the number of packets being routed. If the router receives more than some threshold quantity of packets at once, the router may fail (i.e., drop and/or excessively delay packets). Alternatively, the router or other downstream device may have a limited capacity to receive and/or process data, regardless of packet size. If such a downstream device receives more than some threshold quantity of data at once, the device may fail. In that event, calls may be blocked, delayed and/or distorted.
There is therefore a need in the art for an improved mechanism to facilitate handling of increased call traffic in an internet telephony system.
The present invention provides an improved mechanism to facilitate handling of increased call traffic in a packet switched telephony system. The invention stems in part from a realization that the statistical models employed in the design of telephony networks fail to adequately take into account emergency situations or other scenarios, such as a surge in call traffic, or such as situations that may give rise to a surge in call traffic.
In an emergency situation such as an earthquake, hurricane, blizzard, or other disaster, for example, everyone in the region affected by the emergency may try to use their telephones at once. As a result, it is likely that aggregation points in the region (or serving the region) will become overloaded. Their potential input capacity may become full and they may become unable to process and output all of the incoming media streams. Consequently, the statistical models used at those aggregation points may fail, and many calls may be blocked.
In the PSTN, for instance, when an emergency situation occurs, all of the input ports to CO switches in the region may be used. If a CO switch is designed with smaller output capacity than input capacity, the CO switch may be unable to handle the increased load and may therefore block calls. Further, even if some or all of the CO switches in the region are able to handle the increased load, the next aggregation point in the switching hierarchy, such as a TO switch, may be unable to handle the total increased load stemming from all of the CO switches and may therefore block calls. As a consequence, many important calls may be unable to connect.
Unfortunately, in a circuit switched telephony system such as the PSTN, little can be done to increase the capacity of the system to receive calls in the face of a surge in call traffic. One reason for this limitation is that, by definition, a circuit switched network treats each call connection as a separate xe2x80x9ccircuitxe2x80x9d or channel (even though the circuits may be multiplexed together, for instance, in a T1 or ISDN stream). Each of these channels has a block of bandwidth (for instance, 64 kbps/second for each T1 channel), and a given channel cannot be shared among multiple calls.
In a packet switched telephony system, however, this is not the case. Advantageously, with packet switched telephony, available data packages (e.g., groups of bits, packets, etc.) can be shared among a number of calls. Consequently, as presently contemplated, it is possible to increase the call capacity of the telephony system by representing each input media stream with fewer bits and/or fewer packets.
Thus, in accordance with a preferred embodiment, a method and apparatus is provided for responding to a surge in call traffic or other emergency situation by changing the rate at which media streams are established and/or conveyed. This change in rate, for instance, may involve lowering the bit rate (bandwidth) per media stream and/or lowering the packet rate per media stream. By lowering the rate per media stream, the total number of streams that can be handled (e.g., processed and/or output) per unit time by a given device can be increased. As a result, bottlenecks in the network that would otherwise result from aggregation of call traffic can be fully or partially alleviated.
According to one aspect, for instance, an improved internet telephony machine is provided. The internet telephony machine, which may be an internet telephony gateway, may include an input interface, a processor and an output interface. The input interface receives media streams, the processor encodes each media stream according to a predetermined encoding process and thereby produces output data at a predetermined output rate, and the output interface transmits the resulting output data into a packet switched network. The internet telephony machine may receive emergency-indicia, which indicates the existence of an emergency situation such as high call congestion in the network, and/or some other event that may give rise to high call-congestion in the network. In response, the machine may modify its predetermined encoding process, such as by switching to a different encoder that represents each input media stream at a lower bit rate and/or lower packet rate. Consequently, the machine may output more encoded media streams without overburdening the network.
According to another aspect, for instance, a method is provided for increasing the call capacity of an internet telephony system. Call traffic from a plurality of gateways typically feeds into a router or other downstream aggregation point. The router, for instance, serves as an aggregation point and can experience bottlenecks when there is a surge of incoming call traffic. To overcome this problem, in response to a detection of traffic congestion, the gateways may decrease the rate at which they encode media streams, thereby sending fewer data packages (e.g., fewer packets and/or fewer bits) per media stream to the router and thereby allowing the router to handle the packet traffic from the increased number of media streams.